Core Modules: fs, path, http ইত্যাদি

Computer Programming - নোড জেএস (Node.js) - Modules in Node.js (নোড.জেএস এ মডিউলস)
257

Node.js অনেকগুলি Core Modules সরবরাহ করে, যেগুলি Node.js অ্যাপ্লিকেশন তৈরি করার জন্য অত্যন্ত গুরুত্বপূর্ণ। এই মডিউলগুলির মাধ্যমে আপনি ফাইল সিস্টেম পরিচালনা, ওয়েব সার্ভার তৈরি, পাথ হ্যান্ডলিং এবং অন্যান্য প্রয়োজনীয় কার্যকলাপ সহজে করতে পারেন। এখানে আমরা কিছু গুরুত্বপূর্ণ Node.js Core Modules সম্পর্কে আলোচনা করব: fs, path, এবং http


১. fs (File System)

fs মডিউল ফাইল সিস্টেমের সাথে কাজ করার জন্য ব্যবহৃত হয়। এর মাধ্যমে আপনি ফাইল পড়া, লেখার, ফাইল ডিলিট করা, ডিরেক্টরি তৈরি ইত্যাদি কাজ করতে পারেন। fs মডিউলটি অ্যাসিনক্রোনাস এবং সিনক্রোনাস (Sync) অপারেশন সমর্থন করে।

কিছু সাধারণ ফাংশন:

  • fs.readFile(): ফাইল পড়তে ব্যবহৃত হয়।
  • fs.writeFile(): ফাইল লেখার জন্য ব্যবহৃত হয়।
  • fs.appendFile(): ফাইলের শেষে নতুন ডাটা যোগ করতে ব্যবহৃত হয়।
  • fs.unlink(): ফাইল ডিলিট করতে ব্যবহৃত হয়।

উদাহরণ:

const fs = require('fs');

// ফাইল লেখা
fs.writeFile('example.txt', 'Hello, this is a test file!', (err) => {
  if (err) {
    console.log('Error writing file:', err);
  } else {
    console.log('File written successfully!');
  }
});

// ফাইল পড়া
fs.readFile('example.txt', 'utf8', (err, data) => {
  if (err) {
    console.log('Error reading file:', err);
  } else {
    console.log('File data:', data);
  }
});

২. path (Path Module)

path মডিউল ফাইল এবং ডিরেক্টরির পাথ হ্যান্ডলিংয়ের জন্য ব্যবহৃত হয়। এটি প্ল্যাটফর্ম-নিরপেক্ষ পাথ রেজলিউশন এবং পাথ কম্পোজিশন করতে সাহায্য করে।

কিছু সাধারণ ফাংশন:

  • path.join(): পাথের বিভিন্ন অংশকে একত্রিত করতে ব্যবহৃত হয়।
  • path.resolve(): পাথের পূর্ণতা নির্ধারণ করে।
  • path.basename(): ফাইল বা ডিরেক্টরির নাম বের করে।
  • path.dirname(): ডিরেক্টরির নাম বের করে।
  • path.extname(): ফাইল এক্সটেনশন বের করে।

উদাহরণ:

const path = require('path');

// পাথ যোগ করা
let fullPath = path.join('/users', 'john', 'documents');
console.log(fullPath);  // Output: /users/john/documents

// পাথ রেজলভ করা
let resolvedPath = path.resolve('docs', 'index.html');
console.log(resolvedPath);  // Output: /users/john/docs/index.html (depending on your directory structure)

// ফাইল এক্সটেনশন বের করা
let ext = path.extname('example.txt');
console.log(ext);  // Output: .txt

৩. http (HTTP Module)

http মডিউল Node.js এ HTTP সার্ভার এবং ক্লায়েন্ট তৈরি করার জন্য ব্যবহৃত হয়। আপনি এর মাধ্যমে HTTP রিকোয়েস্ট এবং রেসপন্স হ্যান্ডল করতে পারবেন, ওয়েব সার্ভার চালাতে পারবেন এবং API কল করতে পারবেন।

কিছু সাধারণ ফাংশন:

  • http.createServer(): HTTP সার্ভার তৈরি করতে ব্যবহৃত হয়।
  • http.get(): HTTP GET রিকোয়েস্ট পাঠাতে ব্যবহৃত হয়।
  • http.request(): HTTP রিকোয়েস্ট তৈরি করতে ব্যবহৃত হয়।

উদাহরণ:

const http = require('http');

// একটি সহজ HTTP সার্ভার তৈরি করা
const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello, this is a simple HTTP server!\n');
});

server.listen(3000, () => {
  console.log('Server is running at http://localhost:3000/');
});

এখানে, সার্ভার localhost:3000 পোর্টে রান করবে এবং যেকোনো রিকোয়েস্টের জন্য "Hello, this is a simple HTTP server!" বার্তা পাঠাবে।


৪. url (URL Module)

url মডিউল URL প্যার্স এবং ইউটিলিটি ফাংশন প্রদান করে, যেমন URL এর বিভিন্ন অংশ (প্রটোকল, হোস্ট, পাথ, কুয়েরি প্যারামিটার ইত্যাদি) বের করা।

উদাহরণ:

const url = require('url');

// URL প্যার্স করা
const myUrl = new URL('https://example.com:8080/pathname?query=123#hash');
console.log(myUrl.hostname);  // Output: example.com
console.log(myUrl.pathname);  // Output: /pathname
console.log(myUrl.search);    // Output: ?query=123

৫. events (Events Module)

events মডিউল ইভেন্ট-ড্রিভেন অ্যাপ্লিকেশন তৈরি করতে সহায়তা করে। এটি ইভেন্টগুলি ট্রিগার এবং হ্যান্ডেল করার জন্য ব্যবহার হয়।

উদাহরণ:

const EventEmitter = require('events');

// একটি নতুন ইভেন্ট ইমিটারের উদাহরণ তৈরি করা
const myEmitter = new EventEmitter();

// একটি ইভেন্ট লিসেনার যোগ করা
myEmitter.on('event', () => {
  console.log('An event has occurred!');
});

// ইভেন্ট ট্রিগার করা
myEmitter.emit('event');

সারাংশ

Node.js এর Core Modules এর মধ্যে fs, path, http ইত্যাদি কিছু গুরুত্বপূর্ণ মডিউল রয়েছে যা সার্ভার সাইড অ্যাপ্লিকেশন তৈরি এবং ফাইল সিস্টেম পরিচালনা করতে ব্যবহৃত হয়। এগুলি ডেভেলপারদের জন্য সহজেই অ্যাপ্লিকেশন তৈরি ও পরিচালনা করার সুযোগ প্রদান করে, যেমন ফাইল পড়া/লেখা, পাথ হ্যান্ডলিং, HTTP সার্ভার তৈরি ইত্যাদি।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...